6272. Школьная
олимпиада
На школьной олимпиаде по программированию участникам
было предложено целых две задачи. a учеников полностью справилась с
предложенными заданиями, а b учеников не смогли сдать ни одного.
Сколько всего было участников олимпиады, если верных
решений по первой задаче было принято c, а по второй – d.
Вход. Целые
неотрицательные числа a, b, c и d, не
превышающие 100.
Выход. Выведите
количество участников олимпиады.
Пример входа |
Пример выхода |
1 2 3 4 |
8 |
комбинаторика
Пусть X – множество учеников,
решивших первую задачу.
Пусть Y – множество учеников,
решивших вторую задачу.
Количество
детей, решивших обе задачи, равно |X ∩
Y| = a.
Тогда
количество детей, решивших хотя бы одну задачу, равно
|X| + |Y| – |X ∩ Y| = c + d – a
Добавим к этому значению число детей, не решивших ни одной
задачи, получим количество детей в классе: c + d
– a + b.
Реализация алгоритма
Читаем
входные данные.
scanf("%d %d %d %d", &a, &b, &c, &d);
Вычисляем и выводим ответ.
res = c + d - a + b;
printf("%d\n", res);